package com.gxa.modules.sys.service.impl;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.gxa.common.utils.PageUtils;
import com.gxa.common.utils.Query;
import com.gxa.modules.sys.dto.DoorDto;
import com.gxa.modules.sys.entity.Door;
import com.gxa.modules.sys.mapper.DoorMapper;
import com.gxa.modules.sys.service.DoorService;
import org.apache.commons.lang.StringUtils;
import org.springframework.stereotype.Service;


import java.util.Map;

@Service
public class DoorServiceImpl extends ServiceImpl<DoorMapper, Door> implements DoorService {
    @Override
    public void addDoor(DoorDto doorDto) {
        this.baseMapper.addDoor(doorDto);
    }

    @Override
    public PageUtils queryByPage(Map<String, Object> params) {
        String manner = (String) params.get("manner");
        String startDate = (String) params.get("startDate");
        String endDate = (String) params.get("endDate");


        IPage<Door> page = this.page(new Query<Door>().getPage(params), new QueryWrapper<Door>()
                .eq(StringUtils.isNotEmpty(manner), "manner", manner)
                .ge(StringUtils.isNotEmpty(startDate), "open_time", startDate)
                .le(StringUtils.isNotEmpty(endDate), "open_time", endDate));
        return new PageUtils(page);
    }
}
